package collection02;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

/*
* 在使用迭代器遍历集合中容易引发的问题：
*   需求:定义一个集合，向集合中添加三个字符串：“abc” "def" "ghk"
*   遍历到“ghk”的时候，删除该元素
*  java.util.ConcurrentModificationException
* */
public class CollectionDemo02 {
    public static void main(String[] args) {
        Collection c = new ArrayList();
        c.add("abc");
        c.add("def");
        c.add("ghk");
        // 1. 获取一个迭代器
        Iterator iterator = c.iterator();
        // 2. 利用迭代器判断和获取功能
        while(iterator.hasNext()){
            Object ele = iterator.next();
            if(ele.equals("ghk")){
                // c.remove(ele); // //删除当前迭代器遍历的元素   本来预想结果 [abc, def]

                iterator.remove(); // 删除当前迭代器遍历的元素  [abc, def]

            }
        }
        // 3.打印集合
        System.out.println(c);
    }
}

